/*
 * Fichier d'en-tête du projet menulib
 *
 * Cible : PSP
 * Auteur : BuLLeKeUp
 * Date de création : 17/03/2012
 * Date de dernière modification : 17/03/2012
 *
 * Ce projet est sous license GNU GPL v3. Consultez la license associée dans le repertoire doc/gplv3.txt
 * ou rendez vous sur http://www.gnu.org/copyleft/gpl.html
 *
 * Nom du fichier : ctrlHandler.cpp
 *
 * Description : En-tête de déclaration de la classe de gestion des touches
 *
 */

#ifndef CTRLHANDLER_H
#define	CTRLHANDLER_H

#include "../generic/defines.h"
#include "../menu/menu.h"
#include <stdlib.h>

class ctrlHandler {
public:
    ctrlHandler();
    ctrlHandler(ctrlStruct *p_structCtrl);
    ctrlHandler(SceCtrlData *p_pad);
    ctrlHandler(const ctrlHandler& orig);
    virtual ~ctrlHandler();
    
    int runThreadMenu();
    int runThread();
    int getRunningValue();
    int setRunningValue(int p_value);
    
    ctrlStruct *getStructCtrl();

private :
    int getValuesFromClass();
    
private:
    int running;
    
    ctrlStruct *structCtrl;
    int optionSelected;
    int titleSelected;
    titleOptions *titles;
    SceCtrlData *pad;
    int nbTitles;
    fctPtr ptr;

};

#endif	/* CTRLHANDLER_H */

